#ifndef QTGROUPANIMATIONEFFECT_H
#define QTGROUPANIMATIONEFFECT_H

#include "QtAnimationEffect.h"
#include <list>

class QtGroupAnimationEffect: public QtAnimationEffect
{
	Q_OBJECT

public:
	QtGroupAnimationEffect();
	QtGroupAnimationEffect(const QtGroupAnimationEffect& rhs);
	virtual ~QtGroupAnimationEffect();

	void SetDuration(unsigned int newDuration);
	void Start();

	void AddEffect(QtAnimationEffect *effect);
	QtAnimationEffect* Clone() const;

private slots:
	void EffectFinished(QtAnimationEffect *effect);

private:
	std::list<QtAnimationEffect*> effects;
};

#endif //QTGROUPANIMATIONEFFECT_H
